package custos;

import java.math.BigDecimal;

import util.Operacao;
import util.Real;

public class Emolumentos {
	private BigDecimal taxa;

	private Emolumentos(BigDecimal taxa) {
		this.taxa = taxa;
	}

	private static Emolumentos getEmolumentos(Operacao operacao) {
		if (operacao.equals(Operacao.operacaoFinal))
			return new Emolumentos(new BigDecimal(0.035 / 100));
		else
			return new Emolumentos(new BigDecimal(0.025 / 100));
	}

	private Real calcular(Real valor) {
		return valor.multiply(taxa);
	}

	public static Real  calcular(Real valor, Operacao operacao) {
		return getEmolumentos(operacao).calcular(valor);
	}
}
